package com.wlyuan.open.scanner.domain.quotation;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * @author lijing
 * @description
 */
@Data
public class QuotationMatch implements Serializable {

    private static final long serialVersionUID = 6301693952292061455L;
    private Long orderId;
    private Long status;
    private Long subjectType;

    @ApiModelProperty(value = "合约ID")
    private Long templateId;
    @ApiModelProperty(value = "合约匹配方式枚举 : 1自动 2手动")
    private Integer mode;
    @ApiModelProperty(value = "是否价格重算")
    private Integer refresh;
    @ApiModelProperty(value = "零担费/整车费")
    private BigDecimal transportFee;
    @ApiModelProperty(value = "提货费")
    private BigDecimal pickFee;
    @ApiModelProperty(value = "送货费")
    private BigDecimal deliverFee;
    @ApiModelProperty(value = "装货费")
    private BigDecimal loadFee;
    @ApiModelProperty(value = "卸货费")
    private BigDecimal unloadFee;
    @ApiModelProperty(value = "保险费")
    private BigDecimal insureFee;
    @ApiModelProperty(value = "税费")
    private BigDecimal taxFee;
    @ApiModelProperty(value = "最低费用")
    private BigDecimal minimumFee;
    @ApiModelProperty(value = "报价费用")
    private BigDecimal totalFee;
    @ApiModelProperty(value = "预付款")
    private BigDecimal prepayFee;
    @ApiModelProperty(value = "货到付款")
    private BigDecimal arrivePayFee;
    @ApiModelProperty(value = "代收货款")
    private BigDecimal collectionFee;
    @ApiModelProperty(value = "匹配说明")
    private String description;
    @ApiModelProperty("创建人")
    private Long createBy;
    @ApiModelProperty("创建时间")
    private LocalDateTime createAt;
    @ApiModelProperty("更新人")
    private Long updateBy;
    @ApiModelProperty("更新时间")
    private LocalDateTime updateAt;
    @ApiModelProperty("匹配时间")
    private LocalDateTime matchAt;
    @ApiModelProperty(value = "创建租户ID")
    private Long tenantId;
    @ApiModelProperty("描述")
    private String remarks;

    @ApiModelProperty("报价类型")
    private Integer type;

    private List<SurchargeFee> surchargeFees;
}
